package com.zebra.remoting;

import io.netty.channel.ChannelHandler;
import io.netty.handler.timeout.IdleStateHandler;

/**
 * Codec interface.
 */
public interface RpcCodec {

    /**
     * Create an decoder instance.
     *
     * @return
     */
    ChannelHandler newLengthDecoder();

    /**
     * Create an encoder instance.
     *
     * @return new encoder instance
     */
    ChannelHandler newEncoder();

    /**
     * Create an decoder instance.
     *
     * @return new decoder instance
     */
    ChannelHandler newDecoder();


}
